PouchDB একটি জাভাস্ক্রিপ্ট ডাটাবেস লাইব্রেরি যা ব্রাউজার এবং Node.js উভয় পরিবেশে ব্যবহার করা যেতে পারে। এটি CouchDB-এর মতো একটি ডাটাবেস ক্লায়েন্ট এবং সিঙ্ক্রোনাইজেশন সিস্টেম হিসেবে কাজ করে এবং আপনি সহজেই এটি Node.js এ ইন্টিগ্রেট করতে পারেন।
এই টিউটোরিয়ালে Node.js পরিবেশে PouchDB সেটআপ করার প্রক্রিয়া নিয়ে আলোচনা করা হবে।
PouchDB ইনস্টলেশন
PouchDB Node.js প্রকল্পে ব্যবহার করতে প্রথমে আপনাকে PouchDB ইনস্টল করতে হবে। এটি ইনস্টল করতে আপনাকে npm (Node Package Manager) ব্যবহার করতে হবে।
পদ্ধতি:
প্রথমে আপনার প্রোজেক্ট ডিরেক্টরিতে যান:
cd your-project-directoryPouchDB ইনস্টল করুন:
npm install pouchdbএটি
pouchdbপ্যাকেজটি আপনার প্রকল্পের ডিপেনডেন্সি হিসেবে ইনস্টল করবে।
PouchDB ব্যবহার শুরু করা
একবার ইনস্টলেশন সম্পন্ন হলে, আপনি সহজেই PouchDB ব্যবহার করতে পারবেন। এখন, একটি সাধারণ উদাহরণ দেখে নেওয়া যাক, যেখানে PouchDB ব্যবহার করে একটি ডাটাবেস তৈরি করা হবে এবং কিছু ডেটা ইনসার্ট করা হবে।
পদ্ধতি:
PouchDB ইম্পোর্ট করুন এবং ডাটাবেস তৈরি করুন:
// pouchdb মডিউল ইম্পোর্ট করা const PouchDB = require('pouchdb'); // নতুন ডাটাবেস তৈরি করা const db = new PouchDB('my_database');ডাটাবেসে ডকুমেন্ট ইনসার্ট করুন:
// একটি ডকুমেন্ট তৈরি করা const doc = { _id: 'user123', name: 'John Doe', age: 30 }; // ডকুমেন্ট ইনসার্ট করা db.put(doc) .then(response => { console.log('Document added:', response); }) .catch(err => { console.error('Error adding document:', err); });ডাটাবেস থেকে ডকুমেন্ট রিড করা:
// ডকুমেন্ট রিড করা db.get('user123') .then(doc => { console.log('Fetched document:', doc); }) .catch(err => { console.error('Error fetching document:', err); });ডকুমেন্ট আপডেট বা ডিলিট করা:
// ডকুমেন্ট আপডেট করা db.get('user123') .then(doc => { doc.age = 31; // ডেটা আপডেট করা return db.put(doc); // আপডেটেড ডকুমেন্ট সেভ করা }) .then(response => { console.log('Document updated:', response); }) .catch(err => { console.error('Error updating document:', err); }); // ডকুমেন্ট ডিলিট করা db.get('user123') .then(doc => { return db.remove(doc); // ডকুমেন্ট ডিলিট করা }) .then(response => { console.log('Document deleted:', response); }) .catch(err => { console.error('Error deleting document:', err); });
PouchDB সিঙ্ক্রোনাইজেশন
PouchDB-এর একটি গুরুত্বপূর্ণ বৈশিষ্ট্য হলো এটি CouchDB এর সাথে সিঙ্ক্রোনাইজেশন করতে পারে। এর মাধ্যমে আপনি আপনার লোকাল ডাটাবেস এবং রিমোট ডাটাবেস (CouchDB) মধ্যে ডেটা সিঙ্ক্রোনাইজ করতে পারেন। এটি অ্যাপ্লিকেশনকে অফলাইন এবং অনলাইন মোডে কাজ করতে সাহায্য করে।
সিঙ্ক্রোনাইজেশন উদাহরণ:
// CouchDB এর রিমোট ডাটাবেসের URL
const remoteDB = new PouchDB('http://localhost:5984/my_database');
// সিঙ্ক্রোনাইজেশন শুরু করা
db.sync(remoteDB, { live: true, retry: true })
.on('change', change => {
console.log('Data changed:', change);
})
.on('error', err => {
console.error('Sync error:', err);
});
এই কোডটি লোকাল এবং রিমোট ডাটাবেসের মধ্যে লাইভ সিঙ্ক্রোনাইজেশন চালু করবে।
সারাংশ
এখন আপনি জানেন কীভাবে Node.js পরিবেশে PouchDB সেটআপ করতে হয় এবং এর মাধ্যমে ডাটাবেসে ডেটা অ্যাড, আপডেট এবং রিমুভ করতে হয়। PouchDB এর সিঙ্ক্রোনাইজেশন ফিচার আপনাকে লোকাল এবং রিমোট ডাটাবেসের মধ্যে ডেটা সিঙ্ক করতে সাহায্য করবে, যা অ্যাপ্লিকেশনগুলিকে অফলাইন মোডে কাজ করতে সক্ষম করে।
Read more